package cn.stronglink.asset.module.dam.utils.factorys.realtime.sendcmd;

import java.util.Map;

import cn.stronglink.asset.module.dam.utils.factorys.realtime.common.FactoryDatas;
import cn.stronglink.asset.module.dam.utils.factorys.realtime.common.FactoryFooter;
import cn.stronglink.asset.module.dam.utils.factorys.realtime.common.FactoryHead;

/**
 * 批量更新： 控件内容
 * 
 * 
 * 	头部：EE B112  界面id 00 02
			控件id00 01  	指令长度00 08  	具体指令D4 DD CE DE C1 AC BD D3 
			控件id00 02 		指令长度00 04  	具体指令32 32 72 68 
			控件id00 03 		指令长度00 08  	具体指令D4 DD CE DE C1 AC BD D3 
	尾部：  FF FC FF FF
 */
public class FactoryBatchUpdate {
	
	public static String updateTotalScreen(int screenId,Map<Integer,String> params) {
		//拼接头
		StringBuilder build=FactoryHead.addHead("B112");
			
		//界面id
		build.append( FactoryDatas.changeScreenidOrpartNoToHex(screenId));
		
		//拼接指令体： 多个控件内容
		 for (Integer key: params.keySet()) {  
			    String val=params.get(key);  
			    String cmdMsg=FactoryDatas.addData(val);
			    
			    build.append(  FactoryDatas.changeScreenidOrpartNoToHex(key));
			    build.append(  FactoryDatas.changeScreenidOrpartNoToHex(cmdMsg.length()/2));//类型：文本控件
			    build.append(  cmdMsg);//控件值
			    System.out.println("键 ="+key+"    值：val="+val+"   值：cmdMsg="+cmdMsg+"  指令长度"+(cmdMsg.length()/2));
			  }  
		 
		//拼接指令尾
		return  FactoryFooter.addFooter(build);
	}
}
